package core.rdd.instance;

import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;

public class RemoteSparkExample {

    public static void main(String[] args) {
        // 配置SparkConf指向你的Spark master URL
        SparkConf conf = new SparkConf()
                .setAppName("RemoteSparkExample") // 应用名称
                .setMaster("spark://192.168.159.100:7077"); // 替换成你的master地址

        // 创建JavaSparkContext，它是与集群交互的主要入口点
        try (JavaSparkContext sc = new JavaSparkContext(conf)) {
            // 创建一个简单的本地集合，并将其并行化为RDD
            JavaRDD<Integer> rdd = sc.parallelize(java.util.Arrays.asList(1, 2, 3, 4));

            // 对RDD执行一些转换操作，例如map操作
            JavaRDD<Integer> resultRDD = rdd.map(n -> n * n);

            // 收集结果并打印
            resultRDD.collect().forEach(System.out::println);
        }
    }
}
